package main

import (
	"time"

	"github.com/gofiber/fiber/v2"
)

func main() {
	app := fiber.New()

	app.Get("/passports", func(c *fiber.Ctx) error {
		go func() {
			time.Sleep(2 * time.Second)
			println("Асинхронная задача завершена")
		}()

		return c.SendString("Запрос принят, задача выполняется в фоне!")
	})

	app.Get("/passports/:id", func(c *fiber.Ctx) error {
		return c.SendString("/passports/:id")
	})

	app.Post("/passports", func(c *fiber.Ctx) error {
		return c.SendString("post/passports")
	})

	app.Patch("/passports/:id", func(c *fiber.Ctx) error {
		return c.SendString("patch/passports/:id")
	})

	app.Delete("/passports/:id", func(c *fiber.Ctx) error {
		return c.SendString("delete/passports/:id")
	})

	app.Post("/passports/search", func(c *fiber.Ctx) error {
		return c.SendString("post/passports/search")
	})

	app.Listen(":3000")
}
